#pragma once

#include "G4UImessenger.hh"
//#include "globals.hh"

class DetectorConstruction;
class G4UIdirectory;
class G4UIcmdWithAString;
class G4UIcmdWithAnInteger;
class G4UIcmdWithADoubleAndUnit;
class G4UIcmdWithADouble;

//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....

class DetectorMessenger : public G4UImessenger
{
public:  // Without description
    DetectorMessenger(DetectorConstruction*);
    virtual ~DetectorMessenger();

    void SetNewValue(G4UIcommand*, G4String);

private:
    DetectorConstruction* fDetector;

    G4UIdirectory* fDetDir;
    G4UIcmdWithAString* fAbsMaterCmd;
    G4UIcmdWithADoubleAndUnit* fPhaZCmd;
    G4UIcmdWithAnInteger* fVerbCmd;
    G4UIcmdWithADoubleAndUnit* fPhaXYCmd;
    G4UIcmdWithADouble* fFactorCmd;
};
